import fs from "fs"
import { fileURLToPath} from "url"

export const getControlles = function(){
    let controllersUrl = new URL('../controllers',import.meta.url)
    let filePath = fileURLToPath(controllersUrl);

    let files = fs.readdirSync(filePath);
    let controllersFiles=files.filter(item=>item.endsWith('Controllers.js'));
    let controllersPath = controllersFiles.map(item=>`${controllersUrl}/${item}`);
    return controllersPath;

}

export const regControlers=function (router,controllersFiles){
    controllersFiles.forEach(async item => {
        let arr  = await import (item)

        arr.default.forEach(obj=>{
            if(obj.method==='get'){
                router.get(obj.url,obj.fn)
            }
            if (obj.method==='post') {
                router.post(obj.url,obj.fn)
            }
            if (obj.method==='put') {
                router.put(obj.url,obj.fn)
            }
            if (obj.method==='del') {
                router.delete(obj.url,obj.fn)
            }
        })
    });
}